home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / PowerPlant / AGA Classes 1.2 / Buttons / LAGAIconDropButton.h < prev    next >
Encoding:
Text File  |  1996-06-30  |  3.4 KB  |  88 lines  |  [TEXT/CWIE]

  1. // ===========================================================================
  2. //    LAGAIconDropButton.h
  3. // ===========================================================================
  4. //    “Apple Grayscale Appearance” compliant (almost) drop icon button
  5. //    Copyright © 1996 Chrisoft (Christophe ANDRES)  All rights reserved.
  6. //
  7. //    You may use this source code in any application (commercial, shareware, freeware,
  8. //    postcardware, etc), but not remove this notice (no need to acknowledge the use of
  9. //    this class in the about box)
  10. //    You may not sell this source code in any form. This source code may be placed on 
  11. //    publicly accessable archive sites and source code disks. It may not be placed on 
  12. //    profit archive sites and source code disks without the permission of the author, 
  13. //    Christophe ANDRES.
  14. //    
  15. //        This source code is distributed in the hope that it will be useful,
  16. //        but WITHOUT ANY WARRANTY; without even the implied warranty of
  17. //        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  18. //
  19. //    If you make any change or improvement on this class, please send the improved/changed
  20. //    version to : chrisoft@calva.net or Christophe ANDRES
  21. //                                     20, rue Prosper Mérimée
  22. //                                     67100 STRASBOURG
  23. //                                     FRANCE
  24. //
  25. // ===========================================================================
  26. //    LAGAIconDropButton.cp    <- double-click + Command-D to see class implementation
  27. //
  28. //    LAGAIconDropButton is a subclass of LAGAIconButton, and enables the button to accept
  29. //        dropped items. To use it, you must subclass it and override ItemIsAcceptable and
  30. //        ReceiveDragItem (defined in LDragAndDrop)
  31. //
  32. //        see the comments in LAGAIconButton.h
  33. //
  34. //        Version : 1.2
  35. //
  36. //        Change History (most recent first, date in US form : mm/dd/yy):
  37. //
  38. //                        06/30/96    ca        Public release of version 1.2
  39. //                        06/04/96    ca        Added static RegisterClass for easier class registration
  40. //                                                        Added guard macros in header files
  41. //                                                        Increased version to 1.2
  42. //                        05/13/96    ca        Increased version to 1.1
  43. //                                                        Added copy constructor
  44. //                                                        Added "on the fly" constructor
  45. //                                                        Removed an obsolete and anyway unimplemented constructor
  46. //                                                        Added change history
  47. //                        04/22/96    ca        class made available by Christophe ANDRES <chrisoft@calva.net>
  48. //                                                        (version 1.0)
  49. //
  50. //        To Do:
  51. //
  52.  
  53.  
  54. #ifndef _H_LAGAIconDropButton
  55. #define _H_LAGAIconDropButton
  56. #pragma once
  57.  
  58. #include "LAGAIconButton.h"
  59. #include <LDragAndDrop.h>
  60.  
  61. class    LAGAIconDropButton : public LAGAIconButton, public LDragAndDrop
  62. {
  63.     public        :
  64.         enum { class_ID = '3DDp' };
  65.         static void RegisterClass ();                                                                                                                                                    //    <06/04/96    ca>
  66.         static LAGAIconDropButton* CreateAGAIconDropButtonStream (LStream *inStream);
  67.     
  68.         LAGAIconDropButton ();
  69.         
  70.         LAGAIconDropButton (LStream *inStream);
  71.         
  72.         LAGAIconDropButton (const LAGAIconDropButton &inOriginal);                                                                                        //    <05/13/96 ca>
  73.         
  74.         LAGAIconDropButton (const SPaneInfo &inPaneInfo, MessageT inClickedMessage, OSType inIconType,                //    <05/13/96 ca>
  75.                                                 ResIDT inIconID, Boolean inRadioButtonBehavior);
  76.  
  77.         virtual ~LAGAIconDropButton ();
  78.         
  79.     protected    :
  80.         virtual void HiliteDropArea (DragReference inDragRef);
  81.         
  82.         virtual void UnhiliteDropArea (DragReference inDragRef);
  83.         
  84.         virtual Boolean ItemIsAcceptable (DragReference inDragRef, ItemReference inItemRef);
  85. };
  86.  
  87. #endif
  88.